package algo_annotations.ihm;

import algo_annotations.data.Data_a;
import algo_annotations.data.annotations.Anno;
import algo_annotations.data.sites.Site;
import algo_lignes_sites.ihm.*;
import commons.data.I_Data;
import commons.ihm.A_PanelCartoTocTools;
import commons.ihm.PanelCarto;
import algo_lignes_sites.data.Data_ls;
import commons.drawing.I_Drawable;

// Par rapport à super (abstraite) : spécialise l'objet I_Data et le panel de TOC
public class PanelCartoTocTools_a extends A_PanelCartoTocTools {

	Data_a data_ls;

	public PanelCartoTocTools_a() {
	}

	public PanelTOC_a getPanelTOC() {
		return (PanelTOC_a)panelTOC;
	}

	@Override
	public void setData(I_Data data) {
		super.setData(data);
		this.data_ls = (Data_a) data;
	}

	@Override
	protected void createPanel_TOC() {
		this.panelTOC = new PanelTOC_a(this);
	}

	// Renvoie le site actuellement sélectionné, ou bien le site en mode highlight si sélection multiple
	Site getSelectedSite() {
		I_Drawable o = panelCarto.getObjectHighlighted();
		if (o == null) return null;
		if (o instanceof Site) return (Site)o;
		if (o instanceof Anno) return ((Anno)o).site;
		return null;
	}

}
